package com.liwq.base.atomic;

import com.sun.xml.internal.ws.api.model.wsdl.WSDLOutput;

import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicInteger;

/**
 * @author : liwq
 * @version : 1.0
 * @date : 2022/9/23
 **/
public class AtomicTest {
    private static volatile int m = 0;

    private static AtomicInteger x = new AtomicInteger(0);


    public static void main(String[] args) throws InterruptedException {
//        for (int i = 0; i < 10; i++) {
//            new Thread(() -> {
//
//                for (int j = 0; j < 1000; j++) {
//                    m++;
//                }
//            }).start();
//
//        }
//        TimeUnit.SECONDS.sleep(5);
//        System.out.println(m);


        for (int i = 0; i < 10; i++) {
            new Thread(() -> {

                for (int j = 0; j < 1000; j++) {
                    x.incrementAndGet();
                }
            }).start();

        }


        TimeUnit.SECONDS.sleep(5);
        System.out.println(x.get());

    }
}
